const express = require('express')
const router = express.Router()

// 导入用户路由处理函数模块
const commonHandler = require('../router_handler/common')

// 1.导入验证表单数据的中间件
const expressJoi = require('@escook/express-joi')
// 2.导入需要的验证规则对象
const { register_schema } = require("../schemas/user")
const { login_schema } = require("../schemas/user")

// 3. 在注册新用户的路由中，声明局部中间件，对当前请求中携带的数据进行验证
// 3.1 数据验证通过后，会把这次请求流转给后面的路由处理函数
// 3.2 数据验证失败后，终止后续代码的执行，并抛出一个全局的 Error 错误，进入全局错误级别中间件中进行处理
// 注册新用户
router.post('/register', expressJoi(register_schema), commonHandler.register)

// 登录的路由
router.post('/login', expressJoi(login_schema), commonHandler.login)

// 将路由对象暴露共享出去
module.exports = router